<?php
	class Chamado{
	
	    //atributos da classe Administradora
		private $cod_cliente;
		private $data;
		private $prioridade;
		private	$status;
		private $motivo;	
		private $solicitante;
		
		//metodo construtor da classe Cliente
		public function Cliente(){			
		}
		//metodos set para todos os atributos
		public function setCodCli($cod){
			$this->cod_cliente = $cod;		
		}
		
		public function setData($dt){
			$this->data = $dt;		
		}
		
		public function setPrioridade($prior){
			$this->prioridade = $prior;		
		}
		
		public function setStatus($stat){
			$this->status = $stat;		
		}
		
		public function setMotivo($motivo){
			$this->motivo = $motivo;		
		}
		
		public function setSolicitante($soli){
			$this->solicitante = $soli;		
		}
				
	//metodos get para todos os atributos
		public function getCodCli(){
			return $this->cod_cliente;
		}
		
		public function getData(){
			return $this->data;
		}
		
		public function getPrioridade(){
			return $this->prioridade;
		}
		
		public function getStatus(){
			return $this->status;
		}
		
		public function getMotivo(){
			return $this->motivo;
		}
		
		public function getSolicitante(){
			return $this->solicitante;
		}
		
		public function cadChamado($banco){
			try{
				$banco->conecta();
				$sql = "INSERT INTO chamado(id, id_cliente, data, prioridade, status, motivo, solicitante) VALUES ('NULL', '$this->cod_cliente', '$this->data', '$this->prioridade', '$this->status', '$this->motivo', '$this->solicitante')";
				if($banco->updateSQL($sql)){
					return true;
				}else{
					return false;
				}
				$banco->desconecta();
			}catch(exception $e){
				echo $e->getmessage();
			}
		}
		
		public function alteraChamado($banco,$id){
			try{
				$banco->conecta();
				$sql = "UPDATE chamado SET id_cliente = '$this->cod_cliente', data = '$this->data', prioridade = '$this->prioridade',  status = '$this->status', motivo = '$this->motivo', solicitante = '$this->solicitante' WHERE id = '$id'";
				if($banco->updateSQL($sql)){
					return true;
				}else{
					return false;
				}
				$banco->desconecta();
			}catch(exception $e){
				echo $e->getmessage();
			}
		}
		
		public function excluirChamado($banco, $id){
			try{
				$banco->conecta();
				$sql="DELETE FROM chamado WHERE id = '$id'";
				if($banco->updateSQL($sql)){
	
						return true;
	
					}
				else{
					return false;
				}
				$banco->desconecta();
			}catch(exception $e){
				echo $e->getmessage();
			}
		} 
		
		public function filtraChamadoPorData($banco,$dataini,$datafim,$prioridade,$status){
			try{
				$banco->conecta();
				if(($prioridade == "TODOS") && ($status == "TODOS")){
					$sql = "SELECT ch.id, cl.nome_fantasia, ch.data, ch.prioridade, ch.status FROM chamado ch, cliente cl WHERE ch.data BETWEEN '$dataini' AND '$datafim' AND cl.id = ch.id_cliente ORDER BY ch.data DESC";
				}else{
					if(($prioridade <> "TODOS") && ($status == "TODOS")){
						$sql = "SELECT ch.id, cl.nome_fantasia, ch.data, ch.prioridade, ch.status FROM chamado ch, cliente cl WHERE ch.data BETWEEN '$dataini' AND '$datafim' AND cl.id = ch.id_cliente AND ch.prioridade = '$prioridade' ORDER BY ch.data DESC";
					}else{
						if(($prioridade == "TODOS") && ($status <> "TODOS")){
							$sql = "SELECT ch.id, cl.nome_fantasia, ch.data, ch.prioridade, ch.status FROM chamado ch, cliente cl WHERE ch.data BETWEEN '$dataini' AND '$datafim' AND cl.id = ch.id_cliente AND ch.status = '$status' ORDER BY ch.data DESC";
						}else{
							$sql = "SELECT ch.id, cl.nome_fantasia, ch.data, ch.prioridade, ch.status FROM chamado ch, cliente cl WHERE ch.data BETWEEN '$dataini' AND '$datafim' AND cl.id = ch.id_cliente AND ch.status = '$status' AND ch.prioridade = '$prioridade' ORDER BY ch.data DESC";
						}
					}
				}
				$retorno = $banco->executaSQL($sql);
				if($retorno != false){
					return $retorno;
				}else{
					return false;
				}
				$banco->desconecta();
			}catch(exception $e){
				echo $e->getmessage();
			}
		}
		
		public function getDadosChamado($banco,$id){
			try{
				$banco->conecta();
				$sql = "SELECT * FROM chamado WHERE id = '$id'";
				$retorno = $banco->executaSQL($sql);
				if($retorno != false){
					return $retorno;
				}else{
					return false;
				}
				$banco->desconecta();
			}catch(exception $e){
				echo $e->getmessage();
			}
		}
		
		public function getDadosClientes($banco,$id){
			try{
				$banco->conecta();
				$sql = "SELECT * FROM cliente WHERE id = '$id'";
				$retorno = $banco->executaSQL($sql);
				if($retorno != false){
					return $retorno;
				}else{
					return false;
				}
				$banco->desconecta();
			}catch(exception $e){
				echo $e->getmessage(); 
			}
		}
		
		
	}
?>